package com.lms.collection.queue;

import java.util.Comparator;
import java.util.PriorityQueue;

/**
 * @Author: 李孟帅
 * @CreateTime: 2020-06-28 06:57
 * @Description:
 */
public class PriorityQueueDemo {
    public static void main(String[] args) {
        //创建一个PriorityQueue ，具有默认的初始容量（11），根据它们的natural ordering对其元素进行排序 。
        PriorityQueue<Object> objects = new PriorityQueue<>();
        //创建具有默认初始容量的 PriorityQueue ，并根据指定的比较器对其元素进行排序。
        PriorityQueue<Integer> priorityQueue = new PriorityQueue<>(Comparator.comparingInt(Integer::intValue));
        //创建具有 PriorityQueue初始容量的PriorityQueue，根据指定的比较器对其元素进行排序。
        PriorityQueue<String> queue = new PriorityQueue<>(11, Comparator.comparingInt(String::length));

        boolean a = queue.add("a");

        objects.add(3);
        objects.add(5);
        objects.add(10);
        objects.add(7);
        objects.add(9);
        objects.add(15);
        objects.add(11);
        objects.add(13);
        objects.add(20);
        objects.add(12);
        objects.add(4);
        objects.add(2);
        Object[] objects1 = objects.toArray();
        for (Object o : objects1) {
            System.out.println(o);

        }

    }
}
